package com.yss.reportworld.domain.rule;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 子校验对象分组对象 rw_db_r_check_object_rel_groupby
 *
 * @author yss
 * @date 2023-07-26
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("rw_db_r_check_object_rel_groupby")
public class RCheckObjectRelGroupby extends Model<RCheckObjectRelGroupby> {
    public static final String SHEET_NAME = "多表关联-分组字段";
    /**
     * 技术主键
     */
    @ExcelIgnore
    @TableId("ID")
    private String id;

    /**
     * 关联子校验对象ID
     */
    @ExcelIgnore
    @TableField("RELATION_CHECK_OBJECT_ID")
    private String relationCheckObjectId;

    /**
     * 关联子校验对象识别码
     */
    @ColumnWidth(20)
    @ExcelProperty({"多表关联-分组字段", "关联校验对象识别码"})
    @TableField("RELATION_CHECK_CODE")
    private String relationCheckCode;

    /**
     * 校验识别码
     */
    @ColumnWidth(20)
    @ExcelProperty({"多表关联-分组字段", "子校验对象识别码"})
    @TableField("CHECK_CODE")
    private String checkCode;

    /**
     * 校验对象中文描述
     */
    @ColumnWidth(20)
    @ExcelProperty({"多表关联-分组字段", "子校验对象中文描述"})
    @TableField("CHECK_OBJECT_DESCRIBES")
    private String checkObjectDescribes;
    /**
     * 校验对象字段
     */
    @ColumnWidth(20)
    @ExcelProperty({"多表关联-分组字段", "子校验对象字段英文描述"})
    @TableField("FIELD_CODE")
    private String fieldCode;


    /**
     * 校验对象字段中文名
     */
    @ColumnWidth(20)
    @ExcelProperty({"多表关联-分组字段", "子校验对象字段中文名"})
    @TableField("FIELD_NAME")
    private String fieldName;

    /**
     * 校验对象ID
     */
    @ExcelIgnore
    @TableField("CHECK_OBJECT_ID")
    private String checkObjectId;

    /**
     * 排序
     */
    @ExcelIgnore
    @TableField("SORT")
    private Long sort;

    /**
     * 创建人
     */
    @ExcelIgnore
    @TableField("CREATE_USER")
    private String createUser;

    /**
     * 修改人
     */
    @ExcelIgnore
    @TableField("UPDATE_USER")
    private String updateUser;

    /**
     * 状态(逻辑删除状态)
     */
    @ExcelIgnore
    @TableField("STATUS")
    private Integer status;

    /**
     * 数据编码
     */
    @ExcelIgnore
    @TableField("RW_DB_ID")
    private String rwDbId;
}
